Skip to content

Tech and system model figures#554

Draft
jaredthomas68 wants to merge 7 commits intoNatLabRockies:developfrom
jaredthomas68:doc/figs
Draft

Tech and system model figures#554
jaredthomas68 wants to merge 7 commits intoNatLabRockies:developfrom
jaredthomas68:doc/figs

Conversation

@jaredthomas68
Copy link
Collaborator

@jaredthomas68 jaredthomas68 commented Feb 26, 2026

Trying to provide more insight in the docs about how H2I is set up.

This PR adds some figures to show users how H2I systems connect together. I think it is very important for users to understand this up front since H2I is primarily an integrator of other sub-system models.

Section 1: Type of Contribution

  • Feature Enhancement
    • Framework
    • New Model
    • Updated Model
    • Tools/Utilities
    • Other (please describe):
  • Bug Fix
  • Documentation Update
  • CI Changes
  • Other (please describe):

Section 2: Draft PR Checklist

  • Open draft PR
  • Describe the feature that will be added
  • Fill out TODO list steps
  • Describe requested feedback from reviewers on draft PR
  • [-] Complete Section 7: New Model Checklist (if applicable)

TODO:

  • Improve figures
  • Refine text for clarity and flow

Type of Reviewer Feedback Requested (on Draft PR)

Structural feedback:

Implementation feedback:

Other feedback:
I'm looking for general response to the clarity and design of the figures, as well as there location in the docs. I plan to revise the text, but any feedback there is also of interest.

Section 3: General PR Checklist

  • PR description thoroughly describes the new feature, bug fix, etc.
  • [-] Added tests for new functionality or bug fixes
  • [-] Tests pass (If not, and this is expected, please elaborate in the Section 6: Test Results)
  • Documentation
    • [-] Docstrings are up-to-date
    • Related docs/ files are up-to-date, or added when necessary
    • Documentation has been rebuilt successfully
    • [-] Examples have been updated (if applicable)
  • CHANGELOG.md has been updated to describe the changes made in this PR

Section 3: Related Issues

Section 4: Impacted Areas of the Software

Section 4.1: New Files

  • path/to/file.extension
    • method1: What and why something was changed in one sentence or less.

Section 4.2: Modified Files

  • path/to/file.extension
    • method1: What and why something was changed in one sentence or less.

Section 5: Additional Supporting Information

Section 6: Test Results, if applicable

Section 7 (Optional): New Model Checklist

  • Model Structure:
    • Follows established naming conventions outlined in docs/developer_guide/coding_guidelines.md
    • Used attrs class to define the Config to load in attributes for the model
      • If applicable: inherit from BaseConfig or CostModelBaseConfig
    • Added: initialize() method, setup() method, compute() method
      • If applicable: inherit from CostModelBaseClass
  • Integration: Model has been properly integrated into H2Integrate
    • Added to supported_models.py
    • If a new commodity_type is added, update create_financial_model in h2integrate_model.py
  • Tests: Unit tests have been added for the new model
    • Pytest-style unit tests
    • Unit tests are in a "test" folder within the folder a new model was added to
    • If applicable add integration tests
  • Example: If applicable, a working example demonstrating the new model has been created
    • Input file comments
    • Run file comments
    • Example has been tested and runs successfully in test_all_examples.py
  • Documentation:
    • Write docstrings using the Google style
    • Model added to the main models list in docs/user_guide/model_overview.md
      • Model documentation page added to the appropriate docs/ section
      • <model_name>.md is added to the _toc.yml

@jaredthomas68 jaredthomas68 changed the title Doc/figs Tech and system model figures Feb 26, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds two new diagram figures (tech-model.png and system-model.png) to the documentation and updates the intro.md file to incorporate these visual aids. The changes aim to provide better insight into how H2Integrate's technology and system models are structured.

Changes:

  • Added visual representations of individual technology models and system-level models
  • Reorganized the "How does H2Integrate work?" section to incorporate the new diagrams
  • Enhanced explanations of how technology models connect to form hybrid system models

Reviewed changes

Copilot reviewed 1 out of 3 changed files in this pull request and generated 5 comments.

File Description
docs/system-model.png New diagram showing a simplistic example of how technology models connect in an H2Integrate system
docs/tech-model.png New diagram showing the structure of a single technology model with control, performance, cost, and finance components
docs/intro.md Updated documentation text to reference new diagrams and improve explanation of H2Integrate's modeling approach

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

docs/intro.md Outdated
![A representation of a system model in H2Integrate](system-model.png)

This process is shown for an example energy system in the figure below:
If technologies require resource or price profiles, they can be provided by the user, or in many cases pulled automatically from existing databases. The costs and performance of the technology models in the system are combined for the system performance and system finance components for techno-economic analysis of the hybrid system. H2Integrate systems may include multiple system-level finance models to asses results with different system boundaries if desired. Besides simulation and analysis, H2Integrate can also perform system and sub-system optimization.
Copy link

Copilot AI Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Spelling error: "asses" should be "assess". The word "asses" refers to donkeys, while "assess" means to evaluate or analyze.

Suggested change
If technologies require resource or price profiles, they can be provided by the user, or in many cases pulled automatically from existing databases. The costs and performance of the technology models in the system are combined for the system performance and system finance components for techno-economic analysis of the hybrid system. H2Integrate systems may include multiple system-level finance models to asses results with different system boundaries if desired. Besides simulation and analysis, H2Integrate can also perform system and sub-system optimization.
If technologies require resource or price profiles, they can be provided by the user, or in many cases pulled automatically from existing databases. The costs and performance of the technology models in the system are combined for the system performance and system finance components for techno-economic analysis of the hybrid system. H2Integrate systems may include multiple system-level finance models to assess results with different system boundaries if desired. Besides simulation and analysis, H2Integrate can also perform system and sub-system optimization.

Copilot uses AI. Check for mistakes.
Additionally, H2Integrate tracks the flow of electricity, molecules (e.g., hydrogen, ammonia, methanol), and other products (e.g., steel) between different technologies in the energy system.

H2Integrate uses a set of models to simulate the control, performance, cost, and finance of each technology, where only the performance and cost are required for most technologies.
![A representation of a single technology model in H2Integrate](tech-model.png)
Copy link

Copilot AI Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For consistency with the existing image reference on line 81, consider adding the "./" prefix to the image path. The splash_image.png reference uses "./splash_image.png" while this new reference uses "tech-model.png" without the prefix. While both may work, consistency in image path formatting improves maintainability.

Copilot uses AI. Check for mistakes.
- Modeling the performance of hydrogen electrolyzers, steel furnaces, methanol plants, or ammonia synthesis systems using the generated electricity profiles
- Performing techno-economic analysis of the system to evaluate its costs and financial viability
The individual technology models are then connected to create the hybrid system model, as shown in the simplistic example below.
![A representation of a system model in H2Integrate](system-model.png)
Copy link

Copilot AI Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For consistency with the existing image reference on line 81, consider adding the "./" prefix to the image path. The splash_image.png reference uses "./splash_image.png" while this new reference uses "system-model.png" without the prefix. While both may work, consistency in image path formatting improves maintainability.

Suggested change
![A representation of a system model in H2Integrate](system-model.png)
![A representation of a system model in H2Integrate](./system-model.png)

Copilot uses AI. Check for mistakes.
docs/intro.md Outdated
![A representation of a system model in H2Integrate](system-model.png)

This process is shown for an example energy system in the figure below:
If technologies require resource or price profiles, they can be provided by the user, or in many cases pulled automatically from existing databases. The costs and performance of the technology models in the system are combined for the system performance and system finance components for techno-economic analysis of the hybrid system. H2Integrate systems may include multiple system-level finance models to asses results with different system boundaries if desired. Besides simulation and analysis, H2Integrate can also perform system and sub-system optimization.
Copy link

Copilot AI Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This sentence is quite long (67 words) and covers multiple distinct concepts. Consider breaking it into 2-3 shorter sentences for improved readability. For example: "If technologies require resource or price profiles, they can be provided by the user, or in many cases pulled automatically from existing databases. The costs and performance of the technology models in the system are combined for the system performance and system finance components for techno-economic analysis of the hybrid system. H2Integrate systems may include multiple system-level finance models to assess results with different system boundaries if desired."

Suggested change
If technologies require resource or price profiles, they can be provided by the user, or in many cases pulled automatically from existing databases. The costs and performance of the technology models in the system are combined for the system performance and system finance components for techno-economic analysis of the hybrid system. H2Integrate systems may include multiple system-level finance models to asses results with different system boundaries if desired. Besides simulation and analysis, H2Integrate can also perform system and sub-system optimization.
If technologies require resource or price profiles, they can be provided by the user. In many cases, these profiles can also be pulled automatically from existing databases. The costs and performance of the technology models in the system are combined in the system performance and system finance components to support techno-economic analysis of the hybrid system. H2Integrate systems may include multiple system-level finance models to assess results with different system boundaries, if desired. Besides simulation and analysis, H2Integrate can also perform system and subsystem optimization.

Copilot uses AI. Check for mistakes.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@bayc bayc requested review from bayc February 26, 2026 20:51
@genevievestarke genevievestarke self-requested a review February 26, 2026 20:51
Copy link
Collaborator

@bayc bayc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @jaredthomas68 , thanks for adding these graphics and descriptions, super helpful! I've suggested some added text to hopefully give more detail for the users, let me know what you think.

bayc and others added 4 commits February 27, 2026 13:52
Co-authored-by: Chris Bay <12664940+bayc@users.noreply.github.com>
Co-authored-by: Chris Bay <12664940+bayc@users.noreply.github.com>
Co-authored-by: Chris Bay <12664940+bayc@users.noreply.github.com>
Copy link
Collaborator

@genevievestarke genevievestarke left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for making these @jaredthomas68, they're really great for introducing the structure of H2I! I have a non-blocking comment on one of the figures :)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The main comment I have here is that by separating out steel, it looks like that is separate from the ammonia, methanol, etc. end uses. Is the steel modeling different materially, or do we just have more detail there?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I separated steel out and not ammonia because we have more technologies that are specifically related to the steel supply chain. I debated just leaving the tech lists out of the figures, but I think it does help.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 3 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Depending on the models used and the size of the system, H2Integrate can simulate systems ranging from the kW to GW scale in seconds on a personal computer.
Additionally, H2Integrate tracks the flow of electricity, molecules (e.g., hydrogen, ammonia, methanol), and other products (e.g., steel) between different technologies in the energy system.

For each technology there are 4 different types of models: control, performance, cost, and finance. These model categories allow for modular pieces to be brought in or re-used throughout H2Integrate, as well as ease of development and organization. Note that the only required models for a technology are performance and cost, while control and finance are optional. The figure below shows these four categories and some of the technologies included in H2Integrate. For a full list of models available, please see [Model Overview](user_guide/model_overview.md).
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There’s an extra space in “ease of” that should be removed to avoid rendering/editing artifacts.

Suggested change
For each technology there are 4 different types of models: control, performance, cost, and finance. These model categories allow for modular pieces to be brought in or re-used throughout H2Integrate, as well as ease of development and organization. Note that the only required models for a technology are performance and cost, while control and finance are optional. The figure below shows these four categories and some of the technologies included in H2Integrate. For a full list of models available, please see [Model Overview](user_guide/model_overview.md).
For each technology there are 4 different types of models: control, performance, cost, and finance. These model categories allow for modular pieces to be brought in or re-used throughout H2Integrate, as well as ease of development and organization. Note that the only required models for a technology are performance and cost, while control and finance are optional. The figure below shows these four categories and some of the technologies included in H2Integrate. For a full list of models available, please see [Model Overview](user_guide/model_overview.md).

Copilot uses AI. Check for mistakes.
Comment on lines +73 to +76
![A representation of a single technology model in H2Integrate](tech-model.png)

H2Integrate models hybrid energy systems by:
- Generating electricity output profiles from renewable energy sources (e.g., wind, solar, hydro) and storage systems (e.g., batteries, pumped hydro, vanadium flow batteries)
- Modeling the performance of hydrogen electrolyzers, steel furnaces, methanol plants, or ammonia synthesis systems using the generated electricity profiles
- Performing techno-economic analysis of the system to evaluate its costs and financial viability
The individual technology models are then connected to create the hybrid system model, as shown in the simplistic example below. Here, data from the performance, cost, and finance models of the grid and battery technologies feed into the overall system performance and finance calculations. There is also a physical connection between the grid and battery performance models in the form of an electrical cable. Lastly, within the battery technology, the control model and performance models are connected for dispatching of electricity.
![A representation of a system model in H2Integrate](system-model.png)
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image links use mixed relative-path styles (tech-model.png vs ./splash_image.png). For consistency (and to reduce ambiguity across doc build tooling), consider standardizing on one form (e.g., prefixing all local images with ./).

Copilot uses AI. Check for mistakes.
If technologies require resource or price profiles, they can be provided by the user, or in many cases pulled automatically from existing databases. The costs and performance of the technology models in the system are combined into system-level performance and finance components for techno-economic analysis of the hybrid system. H2Integrate systems may include multiple system-level finance models to assess results with different system boundaries if desired. Besides simulation and analysis, H2Integrate can also perform system and sub-system optimization.

A more complex and generalized example of an H2Integrate model is shown below:
![H2Integrate Splash Image](./splash_image.png)
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image links use mixed relative-path styles (tech-model.png vs ./splash_image.png). For consistency (and to reduce ambiguity across doc build tooling), consider standardizing on one form (e.g., prefixing all local images with ./).

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants